﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;
using BLL;
using DTO;
using DAL;
using System.Windows.Markup;



namespace Children
{
    /// <summary>
    /// Interaction logic for QuanLi.xaml
    /// </summary>
    public partial class QuanLi : Window
    {


        public QuanLi()
        {
            InitializeComponent();
        }
       

        PhuHuynh_BLL PH = new PhuHuynh_BLL();
        HocSinh_BLL HS = new HocSinh_BLL();
        DanhSachLop_BLL DSL = new DanhSachLop_BLL();
        Lop_BLL LOP = new Lop_BLL();
        NhanVien_BLL NV = new NhanVien_BLL();
        PhieuKham_BLL PK = new PhieuKham_BLL();
        ThucDon_BLL TD = new ThucDon_BLL();
        LichHoc_BLL LH = new LichHoc_BLL();
        HocLuc_BLL HL = new HocLuc_BLL();
        DangKi_BLL DK = new DangKi_BLL();
        HoaDon_BLL HD = new HoaDon_BLL();
        ChiTietHoaDon_BLL CTHD = new ChiTietHoaDon_BLL();
        DichVu_BLL DV = new DichVu_BLL();
        DangKi_BLL DKDV  = new DangKi_BLL();
       

        private int Test_HS(string mahs)
        {
             List<HocSinh_DTO> hs = new List<HocSinh_DTO>();
            hs = HS.DS_HocSinhTheoMa(mahs);
            if (hs.Count != 0)
                return 1;
            return 0;

        }

        private bool IsNumber(string pValue)
        {
            foreach (Char c in pValue)
            {
                if (!Char.IsDigit(c))
                    return false;
            }
            return true;
        }

        private void LayThongTinPH(ref PhuHuynh_DTO ph)
        {
            ph.TenPH = txt_TenPH.Text;
            ph.DiaChi = txt_DiaChi.Text;
            ph.Nghenghiep = txt_NgheNghiep.Text;
            ph.SDT = txt_Sdt.Text;
            ph.CMND = txt_CMND.Text;
        }

        private void LayThongTinHS(ref HocSinh_DTO hs, PhuHuynh_DTO ph)
        {
            hs.TenHS = txt_TenHS.Text;
            hs.MaPH = ph.MaPH;
            DateTime today = DateTime.Now;
            
            hs.Ngaysinh = dpk_NgaySinh.SelectedDate.Value;
           
            if (radio_Nam.IsChecked == true)
                hs.Gioitinh = "Nam";
            else hs.Gioitinh = "Nu";
        }
        private void LayDanhSachLop(ref DanhSachLop_DTO dsl, HocSinh_DTO hs)
        {
            dsl.Malop = cmb_HSHS_Lop.SelectedValue.ToString();
            dsl.MaHS = hs.MaHS;
        }

        private void LayThongTinPhieuKham(ref PhieuKham_DTO pk)
        {

            pk.MaHS = int.Parse(txt_MaHS_SK.Text);
            pk.MaNV = int.Parse(cmb_MaNV_SK.SelectedValue.ToString());
            pk.Lankham = int.Parse(txt_LanKham.Text);
            pk.Ngaykham = dpk_NgayKham.SelectedDate.Value;
            pk.Noidungkham = txt_NoiDung.Text;
            pk.Ketluan = txt_KetLuan.Text;

        }
        private void LayThongTinThucDon(ref ThucDon_DTO td)
        {
            td.Ngay = dpk_Ngay_TD.SelectedDate.Value;
      
            td.Thu = cmb_Thu_TD.Text;
            td.Ansang = cmb_Sang_TD.Text;
            td.Angiuagio = cmb_GiuaGio_TD.Text;
            td.Antrua = cmb_Trua_TD.Text;
            td.Anxe = cmb_Xe_TD.Text;


        }
        private void LayThongTinLichHoc(ref LichHoc_DTO lh)
        {
            lh.Malop = cmb_Lop_LH.SelectedValue.ToString();
            lh.Tuan = int.Parse(txt_Tuan_LH.Text);
            lh.Thang = int.Parse(cmb_Thang_LH.Text);
            lh.Thu2 = txt_Thu2_LH.Text;
            lh.Thu3 = txt_Thu3_LH.Text;
            lh.Thu4 = txt_Thu4_LH.Text;
            lh.Thu5 = txt_Thu5_LH.Text;
            lh.Thu6 = txt_Thu6_LH.Text;


        }
        private void LayThongTinHocLuc(ref HocLuc_DTO hl)
        {
            int diem = 0;
            hl.MaHS = int.Parse(txt_MaHS_KQ.Text);
            hl.Thang = int.Parse(cmb_Thang_KQ.Text);
            hl.Nam = int.Parse(txt_Nam_KQ.Text);
          
            if (chb_1.IsChecked == true)
                diem++;
            if (chb_2.IsChecked == true)
                diem++;
            if (chb_3.IsChecked == true)
                diem++;
            if (chb_4.IsChecked == true)
                diem++;
            if (chb_5.IsChecked == true)
                diem++;
            if (chb_6.IsChecked == true)
                diem++;
            if (chb_7.IsChecked == true)
                diem++;
            if (chb_8.IsChecked == true)
                diem++;
            if (chb_9.IsChecked == true)
                diem++;
            if (chb_10.IsChecked == true)
                diem++;
            if (diem >= 9)
            {
                txt_XepLoai_KQ.Text = "Giỏi";
                hl.MaLKQ = "G";
            }
            else if (diem >= 7)
            {
                txt_XepLoai_KQ.Text = "Khá";
                hl.MaLKQ = "K";
            }
            else
            {
                txt_XepLoai_KQ.Text = "Trung bình";
                hl.MaLKQ = "TB";
            }


        }


        private void btn_Luu_HSHS_Click(object sender, RoutedEventArgs e)
        {
           
            DateTime ngaysinh = dpk_NgaySinh.SelectedDate.Value;
            DateTime today = DateTime.Now;

            if(txt_TenHS.Text==""||(radio_Nam.IsChecked==false&&radio_Nu.IsChecked==false)||txt_TenPH.Text==""||txt_NgheNghiep.Text==""||txt_Sdt.Text==""||txt_CMND.Text==""||cmb_HSHS_Lop.Text==""||txt_DiaChi.Text=="")
                
                MessageBox.Show("Hồ sơ học sinh chưa điền đầy đủ thông tin", "THÔNG BÁO", MessageBoxButton.OK, MessageBoxImage.Asterisk);
            else
            if ((today.Year - ngaysinh.Year) < 3 || (today.Year - ngaysinh.Year) > 6)
                MessageBox.Show("Ngày sinh không hợp lệ", "THÔNG BÁO", MessageBoxButton.OK, MessageBoxImage.Asterisk);
           else if(IsNumber(txt_Sdt.Text)==false)
                MessageBox.Show("Số điện thoại không hợp lệ", "THÔNG BÁO", MessageBoxButton.OK, MessageBoxImage.Asterisk);
            else if (IsNumber(txt_CMND.Text) == false || (txt_CMND.Text.Length != 9))
                MessageBox.Show("Số CMND không hợp lệ", "THÔNG BÁO", MessageBoxButton.OK, MessageBoxImage.Asterisk);
            else
            {
                PhuHuynh_DTO ph = new PhuHuynh_DTO();
                LayThongTinPH(ref ph);
                PH.ThemPhuHuynh(ph);
                List<PhuHuynh_DTO> dsph = new List<PhuHuynh_DTO>();
                dsph = PH.DS_PhuHuynh();
                ph.MaPH = dsph[dsph.Count - 1].MaPH;

                HocSinh_DTO hs = new HocSinh_DTO();
                LayThongTinHS(ref hs, ph);
                HS.ThemHocSinh(hs);

                List<HocSinh_DTO> dshs = new List<HocSinh_DTO>();
                dshs = HS.DS_HocSinh();
                hs.MaHS = dshs[dshs.Count - 1].MaHS;

                DanhSachLop_DTO dsl = new DanhSachLop_DTO();
                LayDanhSachLop(ref dsl, hs);
                DSL.ThemDanhSachLop(dsl);
                MessageBox.Show("Thêm thành công hồ sơ nhập học của học sinh " + txt_TenHS.Text + " ; Mã số học sinh: " + hs.MaHS, "Thông báo", MessageBoxButton.OK, MessageBoxImage.None);
            }

        }
        public string Get_Year()
        {
            string str = DateTime.Now.ToString().Trim();
            str = str.Substring(6, 4);
            return str;
        }

        private void Load_QuanLI(object sender, RoutedEventArgs e)
        {

            List<Lop_DTO> dsLop;
            // Lay danh sach lop

            dsLop = LOP.DS_LopThuong();
            // ket danh sach lop voi combo box de the hien

            cmb_HSHS_Lop.ItemsSource = dsLop;
            cmb_HSHS_Lop.DisplayMemberPath = "Tenlop";
            cmb_HSHS_Lop.SelectedValuePath = "Malop";
            cmb_TimLopThuong.ItemsSource = dsLop;
           // cmb_TimLopThuong.ItemsSource = dsLop;
            cmb_TimLopThuong.DisplayMemberPath = "Tenlop";
            cmb_TimLopThuong.SelectedValuePath = "Malop";

           

            DataGrid_HSHS.ItemsSource = HS.DS_HocSinh();

            //Sức khỏe
            List<NhanVien_DTO> dsNhanVienYTe;
            dsNhanVienYTe = NV.DS_NhanVienYTe();
            cmb_MaNV_SK.ItemsSource = dsNhanVienYTe;
            cmb_MaNV_SK.DisplayMemberPath = "TenNV";
            cmb_MaNV_SK.SelectedValuePath = "MaNV";

            //Thực đơn
         
            List<ThucDon_DTO> dstd;
            dstd = TD.DS_ThucDon();

            DataGrid_TD.ItemsSource = dstd;

            //Lịch học
            cmb_Lop_LH.ItemsSource = dsLop;
            cmb_Lop_LH.DisplayMemberPath = "Tenlop";
            cmb_Lop_LH.SelectedValuePath = "Malop";

            cmb_Lop1_LH.ItemsSource = dsLop;
            cmb_Lop1_LH.DisplayMemberPath = "Tenlop";
            cmb_Lop1_LH.SelectedValuePath = "Malop";

            DataGrid_LH.ItemsSource = LH.DS_LichHoc();

            //Kết quả
            DataGrid_KQ.ItemsSource = HL.DS_HocLuc();
            txt_Nam_KQ.Text = Get_Year();

            //Học phí
            cmb_NhanVien_HP.ItemsSource = NV.DS_NhanVienVanPhong();
            cmb_NhanVien_HP.DisplayMemberPath = "TenNV";
            cmb_NhanVien_HP.SelectedValuePath = "MaNV";

            chb_HP_1.IsChecked = true;

            //Dịch vụ
            cbo_madv_DKDV.ItemsSource = DV.DS_DichVu();
            cbo_madv_DKDV.DisplayMemberPath = "TenDV";
            cbo_madv_DKDV.SelectedValuePath = "MaDV";

            cmb_TimMaDV_DV.ItemsSource = DV.DS_DichVu();
            cmb_TimMaDV_DV.DisplayMemberPath = "TenDV";
            cmb_TimMaDV_DV.SelectedValuePath = "MaDV";
        }

        private void btn_Tim_Click(object sender, RoutedEventArgs e)
        {


            if (radio_MaHS.IsChecked == true)
                DataGrid_HSHS.ItemsSource = HS.DS_HocSinhTheoMa(txt_Tim.Text);
            else if (radio_TenHS.IsChecked == true)
                DataGrid_HSHS.ItemsSource = HS.DS_HocSinhTheoTen(txt_Tim.Text);
            else if (radio_Lop.IsChecked == true)
            {
                txt_Tim.Text = cmb_TimLopThuong.SelectedValue.ToString();
                DataGrid_HSHS.ItemsSource = HS.DS_HocSinhTheoLop(txt_Tim.Text);
            }

            else MessageBox.Show("Bạn chưa chọn kiểu tìm?", "THÔNG BÁO", MessageBoxButton.OK, MessageBoxImage.Information);

        }

        private void btn_ThemMoi_Click(object sender, RoutedEventArgs e)
        {
            txt_TenHS.Text = string.Empty;
            radio_Nam.IsChecked = false;
            radio_Nu.IsChecked = false;
            cmb_HSHS_Lop.Text = string.Empty;
            txt_TenPH.Text = string.Empty;
            txt_NgheNghiep.Text = string.Empty;
            txt_DiaChi.Text = string.Empty;
            txt_CMND.Text = string.Empty;
            txt_Sdt.Text = string.Empty;

        }

        private void btn_DS_HocSinh_Click(object sender, RoutedEventArgs e)
        {
            DataGrid_HSHS.ItemsSource = HS.DS_HocSinh();
        }

        private void btn_LuuPhieu_Click(object sender, RoutedEventArgs e)
        {
            if (Test_HS(txt_MaHS_SK.Text) == 0)
                MessageBox.Show("Mã học sinh không tồn tại", "LỖI", MessageBoxButton.OK, MessageBoxImage.Exclamation);
            else
            {
                PhieuKham_DTO pk = new PhieuKham_DTO();
                if (IsNumber(txt_LanKham.Text) == false)
                    MessageBox.Show("Lần khám không hợp lệ", "THÔNG BÁO", MessageBoxButton.OK, MessageBoxImage.Error);
                else
                {
                    LayThongTinPhieuKham(ref pk);
                    PK.ThemPhieuKham(pk);
                    MessageBox.Show("Phiếu khám đã được lưu thành công", "THÔNG BÁO", MessageBoxButton.OK, MessageBoxImage.Information);
                }
            }
        }

        private void btn_ThemMoi_SK_Click(object sender, RoutedEventArgs e)
        {
            txt_MaHS_SK.Text = string.Empty;
            txt_MaHS_SK.Text = string.Empty;
            txt_LanKham.Text = string.Empty;
            txt_KetLuan.Text = string.Empty;
            txt_NoiDung.Text = string.Empty;
           

        }

        private void btn_Xoa_HSHS_Click(object sender, RoutedEventArgs e)
        {
            HocSinh_DTO hs = new HocSinh_DTO();
            hs = DataGrid_HSHS.SelectedItem as HocSinh_DTO;
            HS.Xoa(hs);
            DataGrid_HSHS.ItemsSource = HS.DS_HocSinh();
        }

        private void btn_Tim_SK_Click(object sender, RoutedEventArgs e)
        {
            if (txt_MaHS_SK1.Text == "")
                MessageBox.Show("Bạn chưa nhập Mã số học sinh", "LỖI", MessageBoxButton.OK, MessageBoxImage.Error);
            else
            {
                List<HocSinh_DTO> hs = new List<HocSinh_DTO>();
                hs = HS.DS_HocSinhTheoMa(txt_MaHS_SK1.Text);
                if (hs.Count == 0)
                    MessageBox.Show("Mã học sinh không tồn tại", "LỖI", MessageBoxButton.OK, MessageBoxImage.Exclamation);
                else
                    DataGrid_SK.ItemsSource = PK.DS_PhieuKhamTheoMaHS(txt_MaHS_SK1.Text);
            }

        }

        private void btn_DSPhieuKham_Click(object sender, RoutedEventArgs e)
        {
            DataGrid_SK.ItemsSource = PK.DS_PhieuKham();
        }

        private void btn_Xoa_SK_Click(object sender, RoutedEventArgs e)
        {
            PhieuKham_DTO pk = new PhieuKham_DTO();
            pk = DataGrid_SK.SelectedItem as PhieuKham_DTO;
            PK.Xoa(pk);
            DataGrid_SK.ItemsSource = PK.DS_PhieuKham();
        }

        private void Luu_TD(object sender, RoutedEventArgs e)
        {
            ThucDon_DTO td = new ThucDon_DTO();
            LayThongTinThucDon(ref td);
            TD.ThemThucDon(td);
            MessageBox.Show("Bạn đã lưu thành công thực đơn", "THÔNG BÁO", MessageBoxButton.OK, MessageBoxImage.Information);
        }

        private void btn_Tim_TD_Click(object sender, RoutedEventArgs e)
        {
            if (radio_Thu_TD.IsChecked == true)
                DataGrid_TD.ItemsSource = TD.DS_ThucDonTheoThu(cmb_Thu_TD1.Text);
           else if (radio_Ngay_TD.IsChecked == true)
                DataGrid_TD.ItemsSource = TD.DS_ThucDonTheoNgay(dpk_Ngay_TD1.SelectedDate.Value);   
            else MessageBox.Show("Bạn chưa chọn kiểu tìm?", "THÔNG BÁO", MessageBoxButton.OK, MessageBoxImage.Information);

        }

        private void btn_DS_ThucDon_Click(object sender, RoutedEventArgs e)
        {
            List<ThucDon_DTO> dstd;
            dstd = TD.DS_ThucDon();
            DataGrid_TD.ItemsSource = dstd;

        }

        private void btn_Xoa_TD_Click(object sender, RoutedEventArgs e)
        {
            ThucDon_DTO td = new ThucDon_DTO();
            td = DataGrid_TD.SelectedItem as ThucDon_DTO;
            TD.Xoa(td);
            DataGrid_TD.ItemsSource = TD.DS_ThucDon();

        }



        private void btn_Sua_TD_Click(object sender, RoutedEventArgs e)
        {
            ThucDon_DTO td = new ThucDon_DTO();
            td = DataGrid_TD.SelectedItem as ThucDon_DTO;
            TD.Sua(td);
            DataGrid_TD.ItemsSource = TD.DS_ThucDon();

        }

        private void btn_Luu_LH_Click(object sender, RoutedEventArgs e)
        {
            LichHoc_DTO lh = new LichHoc_DTO();
            LayThongTinLichHoc(ref lh);
            LH.ThemLichHoc(lh);
            MessageBox.Show("Bạn đã lưu thành công lịch học", "THÔNG BÁO", MessageBoxButton.OK, MessageBoxImage.Information);
        }

        private void btn_LamMoi_LH_Click(object sender, RoutedEventArgs e)
        {
            txt_Thu2_LH.Text = string.Empty;
            txt_Thu3_LH.Text = string.Empty;
            txt_Thu4_LH.Text = string.Empty;
            txt_Thu5_LH.Text = string.Empty;
            txt_Thu6_LH.Text = string.Empty;
            txt_Tuan_LH.Text = string.Empty;

        }

        private void btn_Tim_LH_Click(object sender, RoutedEventArgs e)
        {
            if (radio_Tuan_LH.IsChecked == true)
                DataGrid_LH.ItemsSource = LH.DS_LichHocTheoTuan(int.Parse(txt_Tuan1_LH.Text));
            else if (radio_Thang_LH.IsChecked == true)
                DataGrid_LH.ItemsSource = LH.DS_LichHocTheoThang(int.Parse(cmb_Thang1_LH.Text));
            else if (radio_Lop_LH.IsChecked == true)
            {

                DataGrid_LH.ItemsSource = LH.DS_LichHocTheoMalop(cmb_Lop1_LH.SelectedValue.ToString());
            }

            else MessageBox.Show("Bạn chưa chọn kiểu tìm?", "THÔNG BÁO", MessageBoxButton.OK, MessageBoxImage.Information);
        }

        private void btn_DS_LichHoc_Click(object sender, RoutedEventArgs e)
        {
            List<LichHoc_DTO> dslh = new List<LichHoc_DTO>();
            dslh = LH.DS_LichHoc();
            DataGrid_LH.ItemsSource = dslh;

        }

        private void btn_Xoa_LH_Click(object sender, RoutedEventArgs e)
        {
            LichHoc_DTO lh = new LichHoc_DTO();
            lh = DataGrid_LH.SelectedItem as LichHoc_DTO;
            LH.Xoa(lh);
            DataGrid_LH.ItemsSource = LH.DS_LichHoc();

        }

        private void btn_Sua_LH_Click(object sender, RoutedEventArgs e)
        {
            LichHoc_DTO lh = new LichHoc_DTO();
            lh = DataGrid_LH.SelectedItem as LichHoc_DTO;
            LH.Sua(lh);
            DataGrid_LH.ItemsSource = LH.DS_LichHoc();

        }



        private void btn_GhiNhan_KQ_Click(object sender, RoutedEventArgs e)
        {
            List<HocSinh_DTO> hs = new List<HocSinh_DTO>();
            hs = HS.DS_HocSinhTheoMa(txt_MaHS_KQ.Text);
            if (hs.Count == 0)
                MessageBox.Show("Mã học sinh không tồn tại", "LỖI", MessageBoxButton.OK, MessageBoxImage.Exclamation);
            else if (cmb_Thang_KQ.Text == "")
                MessageBox.Show("Bạn chưa nhập Tháng", "LỖI", MessageBoxButton.OK, MessageBoxImage.Error);
            else if (txt_Nam_KQ.Text == "")
                MessageBox.Show("Bạn chưa nhập Năm", "LỖI", MessageBoxButton.OK, MessageBoxImage.Error);
            else
            {
                HocLuc_DTO hl = new HocLuc_DTO();
                LayThongTinHocLuc(ref hl);
                HL.ThemHocLuc(hl);
                MessageBox.Show("Bạn đã lưu thành công kết quả học tập", "THÔNG BÁO", MessageBoxButton.OK, MessageBoxImage.Information);

            }
        }

        private void btn_Tim_KQ_Click(object sender, RoutedEventArgs e)
        {
            if (txt_MaHS1_KQ.Text == "")
                MessageBox.Show("Bạn chưa nhập Mã số học sinh", "LỖI", MessageBoxButton.OK, MessageBoxImage.Error);
            else
            {
                List<HocSinh_DTO> hs = new List<HocSinh_DTO>();
                hs = HS.DS_HocSinhTheoMa(txt_MaHS1_KQ.Text);
                if (hs.Count == 0)
                    MessageBox.Show("Mã học sinh không tồn tại", "LỖI", MessageBoxButton.OK, MessageBoxImage.Exclamation);
                else
                    DataGrid_KQ.ItemsSource = HL.DS_HocLucTheoMaHS(int.Parse(txt_MaHS1_KQ.Text));

            }


        }

        private void btn_DS_HocLuc_Click(object sender, RoutedEventArgs e)
        {
            DataGrid_KQ.ItemsSource = HL.DS_HocLuc();
        }


        private void btn_Xoa_KQ_Click(object sender, RoutedEventArgs e)
        {
            HocLuc_DTO hl = new HocLuc_DTO();
            hl = DataGrid_KQ.SelectedItem as HocLuc_DTO;
            HL.Xoa(hl);
            DataGrid_KQ.ItemsSource = HL.DS_HocLuc();
        }

        private void btn_LamMoi_KQ_Click(object sender, RoutedEventArgs e)
        {
            txt_MaHS_KQ.Text = string.Empty;
            txt_Nam_KQ.Text = string.Empty;
            cmb_Thang_KQ.Text = string.Empty;
            txt_XepLoai_KQ.Text = string.Empty;
            chb_1.IsChecked = false;
            chb_2.IsChecked = false;
            chb_3.IsChecked = false;
            chb_4.IsChecked = false;
            chb_5.IsChecked = false;
            chb_6.IsChecked = false;
            chb_7.IsChecked = false;
            chb_8.IsChecked = false;
            chb_9.IsChecked = false;
            chb_10.IsChecked = false;

        }

        //HỌC PHÍ

        private void btn_XemDVDK_HP_Click(object sender, RoutedEventArgs e)
        {
           if(Test_HS(txt_MaHS_HP.Text)==0)
                MessageBox.Show("Mã học sinh không tồn tại", "LỖI", MessageBoxButton.OK, MessageBoxImage.Exclamation);
            else
                DataGrid_DK_HP.ItemsSource = DK.DS_DangKiTheoMaHS(int.Parse(txt_MaHS_HP.Text));
        }

        private void btn_TinhTriGia_HP_Click(object sender, RoutedEventArgs e)
        {
            int hocphi = 2890000;
            if (txt_MaHS_HP.Text == "")
                MessageBox.Show("Bạn chưa nhập Mã học sinh", "THÔNG BÁO", MessageBoxButton.OK, MessageBoxImage.Asterisk);
            else
            {
                if (chb_HP_1.IsChecked == false)
                    MessageBox.Show("Bạn chưa chọn Phí học", "THÔNG BÁO", MessageBoxButton.OK, MessageBoxImage.Exclamation);
                else
                {
                    if (chb_HP_2.IsChecked == true)
                        hocphi = hocphi + 80000;
                    if (chb_HP_3.IsChecked == true)
                        hocphi = hocphi + 80000;
                    if (chb_HP_4.IsChecked == true)
                        hocphi = hocphi + 100000;
                    if (chb_HP_5.IsChecked == true)
                        hocphi = hocphi + 100000;
                }
                txt_TriGia_HP.Text = hocphi.ToString();
            }


        }

        private void LayThongTinHoaDon(ref HoaDon_DTO hd)
        {
            hd.MaHS = int.Parse(txt_MaHS_HP.Text);
            hd.MaNV = int.Parse(cmb_NhanVien_HP.SelectedValue.ToString());
            hd.TenHD = txt_TenHD_HP.Text;
            hd.NgayHD = dpk_NgayHD_HP.SelectedDate.Value;
            //hd.Trigia = txt_TriGia_HP.Text;
        }

        private void btn_Luu_HP_Click(object sender, RoutedEventArgs e)
        {
            if (cmb_NhanVien_HP.Text == "" || txt_TenHD_HP.Text == ""|| txt_TriGia_HP.Text=="")
                MessageBox.Show("Bạn chưa nhập đủ thông tin của hóa đơn", "THÔNG BÁO", MessageBoxButton.OK, MessageBoxImage.Asterisk);
            else
            {

                HoaDon_DTO hd = new HoaDon_DTO();
                LayThongTinHoaDon(ref hd);

                HD.ThemHoaDon(hd);


                List<HoaDon_DTO> dshd = new List<HoaDon_DTO>();
                dshd = HD.DS_HoaDon();

                ChiTietHoaDon_DTO cthd = new ChiTietHoaDon_DTO();
                cthd.MaHD = dshd[dshd.Count - 1].MaHD;

                if (chb_HP_1.IsChecked == true)
                {
                    cthd.MaHP = "HP";
                    CTHD.ThemChiTietHoaDon(cthd);
                }

                if (chb_HP_2.IsChecked == true)
                {
                    cthd.MaHP = "NKVE";
                    CTHD.ThemChiTietHoaDon(cthd);
                }

                if (chb_HP_3.IsChecked == true)
                {
                    cthd.MaHP = "NKTD";
                    CTHD.ThemChiTietHoaDon(cthd);
                }

                if (chb_HP_4.IsChecked == true)
                {
                    cthd.MaHP = "NKAV";
                    CTHD.ThemChiTietHoaDon(cthd);
                }

                if (chb_HP_5.IsChecked == true)
                {
                    cthd.MaHP = "GTNG";
                    CTHD.ThemChiTietHoaDon(cthd);
                }

                MessageBox.Show("Bạn đã lưu thành công hóa đơn", "THÔNG BÁO", MessageBoxButton.OK, MessageBoxImage.Information);

            }
        }

        //DỊCH VỤ

        private void LayThongTinDKDV(ref DangKi_DTO dkdv)
        {
            dkdv.MaDV = cbo_madv_DKDV.SelectedValue.ToString();
            dkdv.MaHS = int.Parse(txt_mahs_dkdv.Text);
            dkdv.Tungay = dpk_tungay_DKDV.SelectedDate.Value;
            dkdv.Denngay = dpk_denngay_DKDV.SelectedDate.Value;
        }

        private void btn_lammoi_dkdv_Click(object sender, RoutedEventArgs e)
        {
            cbo_madv_DKDV.Text = string.Empty;
            txt_mahs_dkdv.Text = string.Empty;
            dpk_tungay_DKDV.Text = string.Empty;
            dpk_denngay_DKDV.Text = string.Empty;
        }

        private void btn_Tim_DV_Click(object sender, RoutedEventArgs e)
        {
            if (radio_MaHS_DV.IsChecked == true)
            {
                List<DangKi_DTO> dk = new List<DangKi_DTO>();
                dk = DKDV.DS_DangKiTheoMaHS(int.Parse(txt_Tim_DV.Text));
                DataGrid_DSDK_DV.ItemsSource = dk;

                if (DKDV.DS_DangKiTheoMaHS(int.Parse(txt_Tim_DV.Text)).Count == 0)
                    MessageBox.Show("Học sinh không sử dụng dịch vụ", "THÔNG BÁO", MessageBoxButton.OK, MessageBoxImage.Information);
            }


            else if (radio_MaDV_DV.IsChecked == true)
            {
                txt_Tim_DV.Text = cmb_TimMaDV_DV.SelectedValue.ToString();
                DataGrid_DSDK_DV.ItemsSource=DK.DS_DangKiTheoMaDV(txt_Tim_DV.Text);
            }
            
          
            else MessageBox.Show("Bạn chưa chọn kiểu tìm?", "THÔNG BÁO", MessageBoxButton.OK, MessageBoxImage.Information);

        }

        private void btn_DS_MaDV_DV_Click(object sender, RoutedEventArgs e)
        {

            DataGrid_DSDK_DV.ItemsSource = DKDV.DS_DangKiDV();

        }

        private void btn_Xoa_MaDV_DV_Click(object sender, RoutedEventArgs e)
        {
            DangKi_DTO dkdv = new DangKi_DTO();
            dkdv = DataGrid_DSDK_DV.SelectedItem as DangKi_DTO;
            DKDV.Xoa(dkdv);
            DataGrid_DSDK_DV.ItemsSource = DKDV.DS_DangKiDV();
        }

        private void btn_luu_dkdv_Click(object sender, RoutedEventArgs e)
        {
            if (Test_HS(txt_mahs_dkdv.Text) == 0)
                MessageBox.Show("Mã học sinh không tồn tại", "THÔNG BÁO", MessageBoxButton.OK, MessageBoxImage.Error);
            else
            {
                DangKi_DTO dkdv = new DangKi_DTO();
                LayThongTinDKDV(ref dkdv);
                DKDV.ThemDangKi(dkdv);
                MessageBox.Show("Thêm thành công dịch vụ ", "THÔNG BÁO", MessageBoxButton.OK, MessageBoxImage.None);
            }
        }

        private void btn_Tim_HP_Click(object sender, RoutedEventArgs e)
        {

            if (Test_HS(txt_MaHS_HP1.Text) == 0)
                MessageBox.Show("Mã học sinh không tồn tại", "THÔNG BÁO", MessageBoxButton.OK, MessageBoxImage.Error);
            else
            {
                DataGrid_HP.ItemsSource = HD.DS_HoaDonTheoMaHS(int.Parse(txt_MaHS_HP1.Text));
            }
        }

        private void btn_DS_HD_HP_Click(object sender, RoutedEventArgs e)
        {
            DataGrid_HP.ItemsSource = HD.DS_HoaDon();
        }

      

        private void btn_ThongKe_KQ_Click(object sender, RoutedEventArgs e)
        {
            Form_ThongKeKetQua form = new Form_ThongKeKetQua();
            form.ShowDialog();
        }

        private void btn_ThongKe_DV_Click(object sender, RoutedEventArgs e)
        {
            Form_TKDV TKDV=new Form_TKDV();
            TKDV.Show();
            
        }
    }
}
